package com.shopping.service;

import java.util.List;

public interface IBaseService<T> {
	/**
	 * 查询所有的
	 * @return 查询到的所有数据集合
	 */
	List<T> findAll();
	
	/**
	 * 根据id查询实体
	 * @param id 主键
	 * @return
	 */
	T findById(Integer id);
	
	/**
	 * 分页查询
	 * @param offset 偏移量
	 * @param rows 需要返回的行数
	 * @return 分页查询之后的数据
	 */
	List<T> findByPage(Integer offset,Integer rows);
	
	/**
	 * 添加一行数据
	 * @param entity 实体
	 * @return 影响的行数，这里如果添加成功会返回1
	 */
	Integer add(T entity);
	
	/**
	 * 根据主键删除一行数据
	 * @param id	需要删除行的主键
	 * @return 影响的行数，这里如果删除成功会返回1
	 */
	Integer deleteById(Integer id);
	/**
	 * 根据实体修改一条数据
	 * @param entity 修改后的实体
	 * @return 影响的行数
	 */
	Integer edit(T entity);
}
